/*******************************************************************************
View.h


*******************************************************************************/

#pragma once

#include <string>			// Easy strings
#include "EntityManager.h"	// The entity manager

class View
{
public:
	// Pure virtual Render function
	virtual void Render(sf::RenderWindow& window) = 0;
	// Sets the entity associated with the view
	void SetEntity(EntityID entity) { m_entity = entity; }
	void SetLevel(unsigned int iLevel);
	unsigned int GetLevel(void) { return m_iLevel; }
protected:
	// The entity associated with the view
	EntityID m_entity;
	// The paddle image and sprite
	sf::Image m_image;
	sf::Sprite m_sprite;
	// The level the view is shown at
	unsigned int m_iLevel;
}; // View